DEDALUS-The DEDuctive ALgorithm Ur-Synthesizer*

نویسندگان

  • ZOHAR MANNA
  • RICHARD WALDINGER
چکیده

Program synthesis is the automatic construction of programs to meet given specifications. These specifications constitute a high-level description of the desired program which expresses the purpose of the program, without indicating the method by which that purpose is to be achieved. The specifications are expressed in terms of many constructs which are endemic to the particular subject domain of the desired program (e.g., numbers, sets, lists). Because these constructs are only intended to describe the purpose of the program and need not be computed, they can be of a much higher level than the constructs of any programming . language (e.g., they can include logical quantifiers, set constructors, and other noncomputable operations). The specification language can correspond closely with the concepts a programmer actually uses in thinking about the problem. The techniques we are developing are independent of the choice of a target programming language. The particular language we use in our examples and in our experimental system is a simple LISP-like language containing only basic numerical and list-processing operations, conditional expressions, and recursion. In considering the formation of programs with side effects, we extend the language to include assignments to variables, array elements, and other data-structure components. Our basic approach is to transform the specifications repeatedly according to certain rules; each rule replaces one segment of a program description by another, equivalent, segment. The process continues until a description is obtained that is entirely in terms of the primitive constructs of the target language; this description is the desired program.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Paraconsistency in the semantics of integrity constraints

Deductive databases are paraconsistent theory systems which change over time. They do not support the inference of arbitrary consequences from inconsistent components, such as contradictory definitions of database relations (predicates) or violated integrity constraints. Moreover, computed answers in deductive databases typically make sense, almost no matter to which degree consistency or integ...

متن کامل

Inaccuracy of Thyroid to Background Uptake Ratio in Evaluating Technetium-99m-pertechnetate Thyroid Uptake and Establishing an Improved Algorithm

Objective(s): The aim of this study was to explore the accuracy of thyroid to background uptake ratio (UR) in the evaluation of 99mTc-pertechnetate thyroid uptake (TcTU) and establishment of an improved algorithm. Methods: This study was conducted on the thyroid images of 322 patients with thyroid diseases and 67 controls. For the purpos...

متن کامل

A Declarative Semantics for Dedalus

The language Dedalus is a Datalog-like language in whichdistributed computations and networking protocols can beprogrammed, in the spirit of the Declarative Networkingparadigm. Whereas recently formal, operational, semanticsfor Dedalus-like languages have been developed, a purelydeclarative semantics has been lacking so far. The challengeis to capture precisely the amoun...

متن کامل

Positive Dedalus programs tolerate non-causality

Declarative networking is a recent approach to programming distributed applications with languages inspired by Datalog. A recent conjecture posits that the delivery of messages should respect causality if and only if they are used in non-monotone derivations. We present our results about this conjecture in the context of Dedalus, a Datalog-variant for distributed programming. We show that both ...

متن کامل

Confluence Analysis for Distributed Programs: A Model-Theoretic Approach

Building on recent interest in distributed logic programming, we take a model-theoretic approach to analyzing confluence of asynchronous distributed programs. We begin with a model-theoretic semantics for Dedalus and introduce the ultimate model, which captures non-deterministic eventual outcomes of distributed programs. After showing the question of confluence undecidable for Dedalus, we ident...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2010